﻿using MiniFox.Components;
using MiniFox.Infrastructure;
using Sys.Core.Models.Dto;
using Sys.Core.Models.Queries;
using Sys.Core.Models.VO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Sys.Core.Providers
{
    [AutoRegister]
    public interface IDictionaryProvider
    {
        #region 
        DictionaryGroupVo GetItem(string appId, string group);

        bool Create(string appId, DictionaryGroupDto dto);

        bool Update(string appId, DictionaryGroupDto dto);

        bool Remove(string appId, params string[] groups);

        ResultObject<IEnumerable<DictionaryGroupVo>> Query(string appId, PagedQueryObject<DictionaryQuery> request);
        bool Toggle(string appId, string group, string val);

        #endregion
    }
}
